package com.zxz.mq.service;

import com.zxz.mq.dto.TransMessageDto;

import java.util.List;

public interface IMessageReceiveService {
    /**
     * 消息接送前
     * @param id 消息id
     * @param exchange exchange
     * @param routingKey routingKey
     * @param queue queue
     * @param body body
     * @return 消息信息
     */
    TransMessageDto messageReceiveReady(String id, String exchange, String routingKey, String queue, String body);

    /**
     * 消息接送成功后
     * @param id 消息id
     */
    void messageReceiveSuccess(String id);

    /**
     * 消息超过重试次数，不再重试了
     * @param id 消息id
     */
    void messageDead(String id);

    /**
     * 消息接收前列表
     * @return 消息信息List
     */
    List<TransMessageDto> messageReceiveReadyList();
}
